package com.tfswx.fljdmxyy.service;

import com.tfswx.fljdmxyy.dto.gndy.*;
import com.tfswx.fljdmxyy.query.gndy.GndyQueryParam;
import com.tfswx.fljdmxyy.query.gndy.GndyQueryResult;
import com.tfswx.newbie.boot.starter.page.PageParam;
import com.tfswx.newbie.boot.starter.page.PageResult;

/**
 * 功能定义业务接口
 *
 * @author: 陈文佳
 * @date: 2022-10-13
 **/
public interface GndyService {

    /**
     * 新增功能定义
     *
     * @param inputDTO 新增功能定义入参
     * @return GndyAddOutputDTO 新增功能定义出参
     */
    GndyAddOutputDTO addGndy(GndyAddInputDTO inputDTO);

    /**
     * 修改功能定义
     *
     * @param inputDTO 修改功能定义入参
     * @return Boolean 修改功能定义出参
     */
    Boolean updateGndy(GndyUpdateInputDTO inputDTO);

    /**
     * 查询功能定义
     *
     * @param inputDTO 查询功能定义入参
     * @return GndyGetOutputDTO 查询功能定义出参
     */
    GndyGetOutputDTO getGndy(GndyGetInputDTO inputDTO);

    /**
     * 删除功能定义
     *
     * @param inputDTO 删除功能定义入参
     * @return Boolean 删除功能定义出参
     */
    Boolean deleteGndy(GndyDeleteInputDTO inputDTO);

    /**
     * 分页获取列表
     *
     * @param param 分页获取列表入参
     * @return PageResult<GndyQueryResult> 分页获取列表出参
     */
    PageResult<GndyQueryResult> queryGndy(PageParam<GndyQueryParam> param);
}